# 打印100以内  能被3和7整除的数字
# 9月27考勤
# 猜数字
# 打印九九乘法表
# 打印水仙花数
# 打印100以内的质数
# 打印100以内的完数
# 打印菱形
for i in range(5):
    for j in range(5 - i - 1):
        print(" ", end="")
    for k in range(2 * i + 1):
        print("*", end="")
for i in range(3, -1, -1):
    for j in range(5 - i - 1):
        print(" ", end="")
    for k in range(2 * i + 1):
        print("*", end="")
# for i in range(1,10+1,2):
#     print(i,end="\t")



# 打印100以内能被3整除
# for j in range(1, 100 * 1):
#     if j % 3 == 0:
#         print(j, end="\t")



# 打印100以内能被3,7整除
# for j in range(1, 100 * 1):
#     if j % 3 == 0and j % 7 == 0:
#         print(j, end="\t")




#猜数字
#产生随机数
# from random import randint
#
# num =randint(1,20)
# while True:
#     guess = int(input("请输入一个数字： "))
#     if guess >num:
#         print(" 太大了")
#     elif guess < num:
#         print("太小了")
#     else:
#         print("猜对了")
#         break



# 打印菱形
for i in range(1,11+1,2):
    print(("&" * i).center(11))
for i in range(9,0,-2):
    print(("&" * i).center(11))


for i in range(1,100+1):
     # if i%7==0 or str(i).find('7')!=-1:
      if i%7==0 or str(i).count('7')>0:
     #  # if i%7==0 or '7' in str(i)!=-1：
            print(i,end="\t")





# 打印水仙花数
for i in range(1, 100 + 1):
    sum = 0
    for j in range(1, i):
        if i % j == 0:
            sum += j
    if sum == i:
        print(i)
# 打印100到999之间的水仙花数
# 循环遍历100到999的每一个数
for num in range(100, 1000):
    # 分离出百位、十位和个位
    hundreds = num // 100
    tens = (num // 10) % 10
    ones = num % 10

    # 计算每位数字的立方和
    cube_sum = hundreds ** 3 + tens ** 3 + ones ** 3

    # 判断是否为水仙花数
    if num == cube_sum:
        print(num)



# 打印斐波那契数列
for i in range(1, 30 + 1):
    for j in range(1, i + 1):
        print(j, end="\t")
    print()

# 打印九九乘法表
for i in range(1, 9 + 1):
    for j in range(1, i + 1):
        # print(j + "*" + "i" + "=" + j * i, end="\t")
        print("%d*%d=%d" % (j, i, j * i), end="\t")
    print()

# 打印100以内的完数
# 打印100以内的完数

# 循环遍历1到100的每一个数
for num in range(1, 101):
    # 初始化因子总和
    a = 0
      # 检查1到num-1之间的数是否能整除num
    for j in range(1, num):
        if num % j == 0:
            a += j

    # 如果因子总和等于num，则打印
    if a == num:
        print(num)

#打印100以内质数
# 打印100以内的质数

# 循环遍历1到100的每一个数
for num in range(2, 101):
    # 假设当前数是质数
    a = True

    # 检查2到num-1之间的数是否能整除num
    for j in range(2, num):
        if num % j == 0:
            a = False
            break

    # 如果是质数，则打印
    if a :
        print(num)





